package com.os;

/**
 * @Author Matt
 * @Date 2022-09-02
 * @Desc:
 * 练习1：
 *
 *     定义一个接口(Eatable)，里面定义一个抽象方法：void eat();
 *     定义一个测试类（EatableDemo）,在测试类中提供两个方法：
 *         一个方法是：useEatable(Eatable e)
 *         一个方法是主方法，在主方法中调用useEatable方法
 * @Version V1.0
 */
public class EatableDemo {

    public static void main(String[] args) {
        //传统接口实现
        Eatable eatable = new EatableImpl();
        eatable.eat();

        useEatable(new Eatable() {
            @Override
            public void eat() {
                System.out.println("我要吃饭");
            }
        });

        //lambda表达式
        useEatable(() -> {
            System.out.println("lambda要吃饭");
        });
    }

    //匿名内部类
    private static void useEatable(Eatable eatable){
        eatable.eat();
    }
}
